/* ExcluirEncerramento.java
*  Criado em 15/03/2006
*
*/
package br.com.werp.regras.contabilidade.visao.decorador;

import br.com.werp.regras.contabilidade.integracao.ContaDAO;
import br.com.werp.regras.contabilidade.integracao.FabricaDAO;
import br.com.werp.regras.geral.util.Html;
import br.com.werp.regras.geral.util.Util;
import br.com.werp.regras.geral.vos.contabilidade.ContaAnaliticaVO;
import br.com.werp.regras.geral.vos.contabilidade.EncerramentoContaVO;

import org.displaytag.decorator.TableDecorator;

import java.text.DecimalFormat;


/**
 * @author Rafael Carneiro - <a href = "mailto:rafael@portaljava.com">
 * rafael@portaljava.com</a>
 */
public class Encerramento extends TableDecorator {
    private DecimalFormat decimalFormat = new DecimalFormat(
            "#,##0.00;(#,##0.00)");

    public String getEnct_saldo() throws Exception {
        EncerramentoContaVO encerramento = (EncerramentoContaVO) getCurrentRowObject();

        return Html.center(String.valueOf(decimalFormat.format(
                    encerramento.getEnct_saldo())));
    }

    public String getCodCompleto() throws Exception {
        EncerramentoContaVO encerramento = (EncerramentoContaVO) getCurrentRowObject();
        ContaAnaliticaVO analiticaVO = new ContaAnaliticaVO();
        analiticaVO.setAnlt_id(encerramento.getEnct_conta());

        ContaDAO contaDAO = FabricaDAO.getContaDAO();
        analiticaVO = (ContaAnaliticaVO) Util.get0(contaDAO.pesquisarContasAnaliticas(
                    analiticaVO));

        return Html.center(analiticaVO.getSint_contabil());
    }

    public String getCodResumido() throws Exception {
        EncerramentoContaVO encerramento = (EncerramentoContaVO) getCurrentRowObject();
        ContaAnaliticaVO analiticaVO = new ContaAnaliticaVO();
        analiticaVO.setAnlt_id(encerramento.getEnct_conta());

        ContaDAO contaDAO = FabricaDAO.getContaDAO();
        analiticaVO = (ContaAnaliticaVO) Util.get0(contaDAO.pesquisarContasAnaliticas(
                    analiticaVO));

        return Html.center(analiticaVO.getSint_resumido());
    }

    public String getDescricao() throws Exception {
        EncerramentoContaVO encerramentoContaVO = (EncerramentoContaVO) getCurrentRowObject();
        ContaAnaliticaVO contaAnaliticaVO = new ContaAnaliticaVO();
        contaAnaliticaVO.setAnlt_id(encerramentoContaVO.getEnct_conta());

        ContaDAO contaDAO = FabricaDAO.getContaDAO();
        contaAnaliticaVO = (ContaAnaliticaVO) Util.get0(contaDAO.pesquisarContasAnaliticas(
                    contaAnaliticaVO));

        return contaAnaliticaVO.getSint_descricao();
    }

    public String getRemover() {
        EncerramentoContaVO encerramentoContaVO = (EncerramentoContaVO) getCurrentRowObject();

        return Html.center("<input type=\"checkbox\" name=\"encerramentos\" " +
            "Class=\"baseField\" value=\"" + encerramentoContaVO.getEnct_id() +
            "\" >");
    }
}
